home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1996-06-08 | 10.2 KB | 243 lines |
- 10 CLEAR,32768:KEY OFF:COLOR 7,9,4:CLS
- 12 KEY 9,"files"+CHR$(34):KEY 5,"888"+CHR$(13):KEY 10,"666"+CHR$(13):KEY 4,"SAVE"+CHR$(34)+"VU"
- 16 GOTO 2000
- 20 DEF SEG=&H4F00
- 30 BLOAD "vu64ba.asm",&H100
- 40 PRINT" HICOLOR VIEWING SSTV PIX'S (VU.BAS)"
- 45 PRINT" Copyrights 1993,1995 Ben Vester"
- 50 PRINT" This program views on a 640x480x256 color SVGA a pix that was captured by"
- 60 PRINT"the K3BC SSTV program and is filed in the RAMDISK (as D:A.P) or as a pix file"
- 80 PRINT"with a suffix attached indicating the MODE used in copying the picture.That is,"
- 90 PRINT"a file BABOON copied in Scottie 1 would be filed as BABOON.S1. This program"
- 100 PRINT"will add .S1 to the BABOON title given. The Robot Modes (1) and (2) are crystal"
- 101 PRINT"controlled synchronously copied. Their line-sync'ed versions, (11) and (22) use"
- 103 PRINT".36A and .72A suffixes. On execution, the pictures are displayed in full"
- 104 PRINT"color. The arrows can be used to scroll. On the Robot modes 36sec and 72sec"
- 105 PRINT"due to their makeup, right/left scrolling can be used to optimise color"
- 106 PRINT"registration. Also on Robot modes the keys F and G work to retune the "
- 107 PRINT"receiver after the fact in 10 cycle increments for color balance. Robot"
- 108 PRINT"format is very sensitive to tuning. The other modes are relatively unsensi-"
- 109 PRINT"tive to tuning but can have their color registration optimised by using keys"
- 110 PRINT"C and X. Note that you can scroll fast with R and L and slower with arrows."
- 111 PRINT"Left arrow is very slow for precise positioning in the viewing window. "
- 112 PRINT"Normally the picture is positioned precisely before saving as a file. Q(uit)"
- 113 PRINT"returns to BASIC where you can hit F2 for another pix or hit F10 and ENTER to"
- 115 PRINT"goto DOS. Mode (96) requires a truecolor SVGA video card."
- 150 PRINT:PRINT" MODE used for Pix: (1)or(11)36sec (2)or(22)72sec (3)Scot1 (4)Scot2 (5)AVT90"
- 160 PRINT"(6)AVT94 (7)Martin 1 (77)Martin 2 (8)Wraase 96 (9)FAX480 (96)CoFAX (99)Wefax"
- 161 INPUT"----F5=SYS CONFIG------F10=GOTO DOS------------";I
- 162 IF I=0 THEN GOTO 150
- 163 IF I=888 THEN COLOR 7,0,0:CLS:PRINT" F5 to SYS CONFIG---F2 to reRUN": KEY 5,"LIST 2000-2200"+CHR$(13):KEY 10,"system"+CHR$(13):END
- 164 IF I=666 THEN COLOR 7,0,0:CLS:SYSTEM
- 166 IF FI=1 THEN GOTO 310
- 170 PRINT:PRINT:INPUT" What Path\File-Program adds suffix (Default is D:A.P)";A$
- 180 IF A$="" THEN A$=DR$+":A.P":P=2:GOTO 235
- 182 IF I=96 THEN A$=A$+".cfx"
- 185 IF I=2 THEN A$=A$+".72"
- 186 IF I=22 THEN A$=A$+".72a"
- 187 IF I=1 THEN A$=A$+".36"
- 188 IF I=11 THEN A$=A$+".36a"
- 190 IF I=3 THEN A$=A$+".s1"
- 191 IF I=8 THEN A$=A$+".96"
- 192 IF I=9 THEN A$=A$+".fax"
- 200 IF I=4 THEN A$=A$+".s2"
- 210 IF I=5 THEN A$=A$+".90"
- 220 IF I=6 THEN A$=A$+".94"
- 230 IF I=7 THEN A$=A$+".m1"
- 232 IF I=77 THEN A$=A$+".m2"
- 235 IF I=2 THEN GOTO 800
- 236 IF I=22 THEN GOTO 800
- 237 IF I=1 THEN GOTO 1100
- 238 IF I=11 THEN GOTO 1100
- 240 IF I=3 THEN L=288
- 245 IF I=96 THEN L=546:LL=1638:P=528:GOTO 1900
- 250 IF I=4 THEN L=184
- 260 IF I=5 THEN L=256
- 270 IF I=6 THEN L=320
- 280 IF I=7 THEN GOTO 740
- 282 IF I=77 THEN GOTO 740
- 285 IF I=8 THEN L=248
- 290 IF I=99 THEN GOTO 950
- 300 GOTO 602
- 310 PRINT:PRINT:PRINT:INPUT" What PATH for the Files (Default=Default Path)";PA$
- 312 IF I=1 THEN MO$="36"
- 313 IF I=11 THEN MO$="36a"
- 314 IF I=2 THEN MO$="72"
- 315 IF I=22 THEN MO$="72a"
- 316 IF I=3 THEN MO$="s1"
- 317 IF I=4 THEN MO$="s2"
- 318 IF I=5 THEN MO$="90"
- 319 IF I=6 THEN MO$="94"
- 320 IF I=7 THEN MO$="m1"
- 321 IF I=77 THEN MO$="m2"
- 322 IF I=8 THEN MO$="96"
- 323 IF I=9 THEN MO$="fax"
- 324 IF I=99 THEN MO$="wx"
- 325 IF I=96 THEN MO$="cfx"
- 330 CLS:FILES PA$+"*."+MO$
- 335 PRINT" MOVE CURSOR TO FILE"
- 340 DEF SEG=&H6F00:BLOAD"pickfile.asm",&H100
- 345 K=&H100:CALL K
- 350 FOR Y=&H190 TO &H19C
- 355 Z=PEEK(Y)
- 360 IF Z=32 OR Z=46 THEN GOTO 375
- 365 Z$=CHR$(Z)
- 370 A$=A$+Z$:NEXT Y
- 375 A$=PA$+A$:DEF SEG=&H4F00:GOTO 180
- 602 POKE &H226,2 'No. poked here=pixels scrolled per left arrow depression
- 605 POKE &H427,PT
- 607 IF I=9 THEN GOTO 900
- 610 P=L-PT:P2=INT(P/256):P1=P-P2*256
- 620 POKE &H15D,P1:POKE &H15E,P2:POKE &H45B,P1:POKE &H45C,P2
- 630 IF I=4 THEN POKE &H3EA,16:LL=568
- 635 IF I=5 THEN POKE &H3EA,0:LL=768
- 640 IF I=7 THEN POKE &H3EA,9:LL=915
- 641 IF I=77 THEN POKE &H3EA,8:LL=464
- 642 IF I=8 THEN POKE &H3EA,1:LL=745
- 645 IF I=6 THEN POKE &H3EA,0:LL=960
- 650 IF I=3 THEN POKE &H3EA,14:LL=878
- 651 IF EX=0 THEN GOTO 659
- 652 'next two lines put in expand by 2 for modes desired
- 653 IF I=4 THEN P=320:POKE &H43B,235:POKE &H43C,27:POKE &H15A,0:POKE &H15B,2
- 654 IF I=77 THEN P=2*P:POKE &H43B,235:POKE &H43C,27:POKE &H15A,0:POKE &H15B,2
- 659 OF=(640-2*P)/2:OF2=INT(OF/256):OF1=OF-256*OF2:POKE &H13B,OF1:POKE &H13C,OF2
- 660 LL2=INT(LL/256):LL1=LL-256*LL2:POKE &H1FD,LL1:POKE &H1FE,LL2:POKE &H242,LL1:POKE &H243,LL2
- 670 IF V=1 THEN GOTO 683
- 680 VC=0:PRINT:PRINT:PRINT" Is Video Card (1)Trident mode 5D (2)Tseng mode 2E (3)ATI mode 62"
- 681 INPUT"(4)Paradise mode 5F (5)Chips&Tech mode 79 (6)Genoa mode 5C (7)VESA (Default=7)";VC
- 682 IF VC=0 THEN VC=7 'default choice
- 683 IF VC=1 THEN GOTO 1590
- 684 IF VC=2 THEN GOTO 710
- 685 IF VC=3 THEN GOTO 1600
- 686 IF VC=4 THEN GOTO 1650
- 690 IF VC=5 THEN GOTO 1700
- 700 IF VC=6 THEN GOTO 1750
- 701 IF VC=7 THEN GOTO 1800
- 705 GOTO 680
- 710 POKE &H113,46:POKE &H142,205:POKE &H144,136:POKE &H145,216:POKE &H146,238:POKE &H147,195
- 720 K=&H100
- 721 IF I=99 THEN CALL K(C%,S%,A$):GOTO 729
- 722 CALL K(S%,A$)
- 729 COLOR 7,0,0:CLS:PRINT" HIT F2 TO VIEW ANOTHER PIX---HIT F10 TO GOTO DOS"
- 730 KEY OFF:KEY 10,"system"+CHR$(13):END
- 740 POKE &H180,128:POKE &H3DA,128:POKE &H3CB,64:POKE &H3BC,192
- 745 IF I=77 THEN L=152:GOTO 602
- 750 L=302:GOTO 602
- 800 L=282
- 801 BLOAD "vurobol.asm",&H100
- 802 POKE &H4BD,10:POKE &H350,10 'initial color offset in robot 72
- 810 PT=4 'pixels trimmed on Robot 72
- 815 POKE &H16A,(141-PT):POKE &H3D4,(141-PT)
- 816 POKE &H46A,(76+4*PT)
- 817 POKE &H4D5,(75+4*PT)
- 825 POKE &H337,TU:POKE &H33F,TU:POKE &H2D7,TU:POKE &H2DF,TU
- 835 IF BR=0 THEN POKE &H4EC,208:POKE &H4ED,232:POKE &H4EE,235:POKE &H4EF,4
- 840 IF BR=2 THEN POKE &H4EC,235:POKE &H4ED,6
- 850 OF=(640-2*L)/2:OF2=INT(OF/256):OF1=OF-256*OF2:POKE &H13B,OF1:POKE &H13C,OF2
- 860 POKE &H226,2:POKE &H1FD,102:POKE &H1FE,2:POKE &H242,102:POKE &H243,2:POKE &H15D,102
- 861 IF I=2 THEN GOTO 870
- 862 POKE &H1FD,85:POKE &H242,85:POKE &H15D,85
- 870 GOTO 670
- 900 POKE &H15D,16:POKE &H15E,2:POKE &H184,235:POKE &H185,1:POKE &H180,0:POKE &H3A8,235:POKE &H3A9,57
- 910 POKE &H3EA,18:POKE &H3A2,224:POKE &H3A3,1:POKE &H13B,52:POKE &H13C,0:POKE &H16A,128:POKE &H16B,2
- 920 LL=546:GOTO 660
- 950 PRINT:PRINT:PRINT:INPUT" Do you choose (1)1024x768 or (2)640x480 or (3)FAX480 Pix (Default=1)";S
- 960 IF S=0 THEN S=1
- 961 IF S=1 THEN A$=A$+".wx"
- 970 BLOAD "vuwx.asm",&H100
- 980 IF S=2 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1:POKE &H113,93:A$=A$+".wx"
- 981 IF S=3 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1:POKE &H113,93:POKE &H25A,34:POKE &H25B,2:GOTO 1000
- 983 PRINT:PRINT:INPUT" What White level count do you choose (Default=138)";W
- 984 IF W=0 THEN W=138
- 985 POKE &H170,W:POKE &H174,W:POKE &H176,W:POKE &H334,128
- 990 IF P=2 THEN A$=DR$+":a.p":GOTO 670
- 991 GOTO 670
- 1000 POKE &H15D,34:POKE &H15E,2:POKE &H1FD,68:POKE &H1FE,4:POKE &H242,68:POKE &H243,4:A$=A$+".fax":GOTO 983
- 1100 BLOAD "vuro36l.asm",&H100
- 1102 IF BR=0 THEN POKE &H4EC,208:POKE &H4ED,232:POKE &H4EE,235:POKE &H4EF,4
- 1103 IF BR=2 THEN POKE &H4EC,235:POKE &H4ED,6
- 1104 POKE &H4BD,8:POKE &H350,8 'initial color offset in robot 36
- 1110 LL=616:POKE &H13B,140:POKE &H226,1:POKE &H15D,100:POKE &H1F2,12
- 1120 IF I=11 THEN LL=576:POKE &H15D,64:POKE &H3BB,64:POKE &H3EF,0:POKE &H4A8,0:POKE &H441,0:POKE &H2F6,32:POKE &H303,32
- 1130 GOTO 660
- 1590 IF I=6 THEN POKE &H113,&H5C
- 1595 GOTO 720
- 1600 POKE &H113,&H62:POKE &H444,192:POKE 321,235:POKE 322,90 'ATI video mode 62
- 1610 POKE 324,136:POKE 325,196
- 1615 POKE 326,128:POKE 327,228:POKE 328,225:POKE 329,208:POKE 330,227:POKE 331,8
- 1620 POKE 332,220:POKE 333,176:POKE 334,178:POKE 335,254:POKE 336,202:POKE 337,239:POKE 338,195
- 1630 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1:POKE 321,233:POKE 322,66:POKE 323,4:POKE &H58A,192
- 1635 IF I=6 THEN POKE &H113,&H61
- 1640 GOTO 720
- 1650 POKE &H113,&H5F:POKE 321,186:POKE 322,206 'Paradise video mode 5f
- 1660 POKE 323,3:POKE 324,176:POKE 325,9:POKE 326,136:POKE 327,220:POKE 328,208
- 1665 POKE 329,228:POKE 330,208:POKE 331,228:POKE 332,208:POKE 333,228:POKE 334,208:POKE 335,228
- 1670 POKE 336,239:POKE 337,195
- 1680 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1
- 1685 'IF I=6 THEN POKE &H113,&H5E
- 1690 GOTO 720
- 1700 POKE &H113,&H79:POKE 321,186:POKE 322,214 'Chips & Tech Mode 79
- 1710 POKE 323,3:POKE 324,176:POKE 325,16:POKE 326,136:POKE 327,220:POKE 328,177
- 1715 POKE 329,BS:POKE 330,210:POKE 331,228:POKE 332,239:POKE 333,195
- 1730 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1
- 1735 IF I=6 THEN POKE &H113,&H78
- 1740 GOTO 720
- 1750 POKE &H113,&H5C:POKE 321,186:POKE 322,196 'Genoa mode 5c
- 1760 POKE 323,3:POKE 324,176:POKE 325,6:POKE 326,238:POKE 327,66:POKE 328,236
- 1765 POKE 329,36:POKE 330,199:POKE 331,128:POKE 332,227:POKE 333,7:POKE 334,208
- 1770 POKE 335,227:POKE 336,208:POKE 337,227:POKE 338,208:POKE 339,227:POKE 340,8
- 1780 POKE 341,216:POKE 342,238:POKE 343,195
- 1785 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1
- 1787 IF I=6 THEN POKE &H113,&H7E
- 1790 GOTO 720
- 1800 IF VC=4 THEN GOTO 1841
- 1805 POKE &H111,79:POKE &H113,2:POKE 321,177 'VESA mode 101
- 1810 POKE 322,BS:POKE 323,210:POKE 324,227:POKE 325,136:POKE 326,218
- 1820 POKE 327,48:POKE 328,246:POKE 329,184:POKE 330,5:POKE 331,79:POKE 332,49:POKE 333,219:POKE 334,205
- 1821 POKE 335,16:POKE 336,195
- 1825 IF S=1 THEN POKE &H44A,5:GOTO 1840
- 1830 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1
- 1835 'IF I=6 THEN POKE &H398,0
- 1840 GOTO 720
- 1841 POKE &H113,&H72:POKE 321,186:POKE 322,206 'Paradise video mode 72
- 1842 POKE 323,3:POKE 324,176:POKE 325,9:POKE 326,136:POKE 327,220:POKE 328,208
- 1843 POKE 329,228:POKE 330,208:POKE 331,228:POKE 332,208:POKE 333,228:POKE 334,208:POKE 335,228
- 1844 POKE 336,239:POKE 337,195
- 1845 IF I=99 THEN POKE &H16A,128:POKE &H16B,2:POKE &H155,224:POKE &H156,1
- 1846 'IF I=6 THEN POKE &H113,&H5E
- 1847 GOTO 720
- 1900 BLOAD "trushof.asm",&H100
- 1902 IF BP=4 THEN POKE &H3CC,235:POKE &H3CD,32:POKE &H5CB,235:POKE &H5CC,187
- 1903 IF BP=2 THEN POKE &H398,17:POKE &H319,17:POKE &H18D,17:POKE &H17A,233:POKE &H17B,67:POKE &H17C,5
- 1905 P2=INT(P/256):P1=P-256*P2:POKE &H3B0,P1:POKE &H3B1,P2:POKE &H46B,P1:POKE &H46C,P2
- 1910 OF=BP*(640-P)/2:OF2=INT(OF/256):OF1=OF-256*OF2:POKE &H13C,OF1:POKE &H13D,OF2:POKE &H512,OF1:POKE &H513,OF2
- 1915 Z=2*L:ZB=INT(Z/256):ZA=Z-256*ZB:POKE &H3CA,ZA:POKE &H3CB,ZB
- 1920 W=2*L+32:WB=INT(W/256):WA=W-256*WB:POKE &H3A9,WA:POKE &H3AA,WB:POKE &H3E5,WA:POKE &H3E6,WB
- 1925 LB=INT(L/256):LA=L-256*LB:POKE &H3BC,LA:POKE &H3BD,LB:POKE &H3C3,LA:POKE &H3C4,LB
- 1930 U=BP*L:UB=INT(U/256):UA=U-256*UB:POKE &H55F,UA:POKE &H560,UB:POKE &H531,UA:POKE &H532,UB
- 1935 POKE &H427,10:POKE &H226,2 'poke to &h226 is pixels per left arrow depress
- 1940 LL2=INT(LL/256):LL1=LL-256*LL2:POKE &H1FD,LL1:POKE &H1FE,LL2:POKE &H242,LL1:POKE &H243,LL2:POKE &H15D,LL1:POKE &H15E,LL2
- 1945 Q=BL-BP*P:QB=INT(Q/256):QA=Q-256*QB:POKE &H3D6,QA:POKE &H3D7,QB
- 1950 POKE &H39A,233:POKE &H39B,107:POKE &H39C,253:POKE &H11A,0:POKE &H11B,0:POKE &H2B8,235:POKE &H2B9,6:POKE &H3AC,1:POKE &H3B4,1
- 1951 POKE &H3A2,224:POKE &H3A3,1
- 1955 GOTO 1800
- 2000 ' SYSTEM CONFIGURATION
- 2010 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- 2020 V=0 'V=0 is manual video card choice---V=1 is automatic choice
- 2030 VC=7 'Video card 1=Trident 2=Tseng 3=ATI 4=Paradise 5=Chips 6=Genoa
- 2040 '7=VESA (Vesa card or Vesa driver. Pick BS below to get full pix).
- 2045 BS=0 'Bank shift for different VESA configurations-values from 0 to 6
- 2046 BL=1920 'Bytes/Line in TRUCOLOR modes--ATI=1920 and Diamond PRO=2048
- 2047 BP=3 'Bytes/Pixel--use 3 for 1 mb Vcards--some 2 mb Vcards use BP=4
- 2050 DR$="d" 'RAMDISK drive designation--make letter D match your drive
- 2060 BR=2 'Robot brightness control-br=2 is high-br=1 is med-br=0 is low
- 2070 TU=2 'Robot tuning increment with F and G in ten's of cycles
- 2080 PT=6 'Pixels trimmed from edge of picture--see line 810 for Robot
- 2090 EX=1 'For S2 and M2. EX=0 is as rcvd. EX=1 is EXpanded to fill screen
- 2095 FI=1 'FI=0 type file name FI=1 display all files with cursor select
- 2100 GOTO 20
- 2110 'INSTRUCTIONS
- 2120 'To change, move cursor and type over present value and ENTER. Then move
- 2130 'cursor into clear and hit F5 to check what you typed. To SAVE the change
- 2140 'hit F4 and ENTER. Otherwise hit F2 to reRUN with temporary change.
-